1. Field of the Invention
The present invention relates to a method for real-time traffic scheduling, and more particularly to a real-time uplink traffic scheduling apparatus in a mobile station and a method therefor.
2. Description of Related Art
In the IEEE 802.16e standard, four sublayers have been respectively identified as a convergence sublayer (CS), a medium access control (MAC) common part sublayer, a security sublayer, and a physical layer. Among the sublayers, the security sublayer is responsible for the authorization, key management, and encryption/decryption calculation of data at the user end.
In the IEEE 802.16e standard, a base station (BS) provides a bandwidth grant to an uplink bandwidth of each mobile station (MS) instead of respectively appointing a bandwidth value to each of the service flows in the MS. Thus, a scheduler of the BS must assign appropriate and sufficient bandwidths to all the MS, and achieve the largest throughput of the system.
On the contrary, the MS can only accept the bandwidth size assigned by the BS. An important functional index for the MS scheduler of the MS is how the bandwidth provided by the BS is used efficiently, regardless of the bandwidth being sufficiently provided by the BS to the MS. Therefore, the MS must by itself assign the order and the sizes of packets for transmitting in an uplink service flow to achieve the greatest efficiency of the bandwidth grant and transmit the greatest amount of the effective data.
If the bandwidth granted by the BS decreases, such that the MS can not transmit all the packets before their corresponding decoding times, the packets that are relatively more important should be satisfied first. Audio and video containing data, in a MP4 format which is established by the Moving Picture Experts Group (MPEG) of the International Organization for Standardization (ISO), is used as an example. The data in this standard includes the I-frame, the P-frame, and the B-frame. The I-frame is an intra coded picture, which is a reference diagram that is equivalent to a fixed image and is independent of other diagram types. Every diagram group starts with pictures of this type. The P-frame is a predictive coded picture, which includes the difference information from the previous I-frames or P-frames, and predicts with the reference to the previous I-frames or P-frames. The B-frame is a bidirectionally predictive coded picture, which includes the difference information from the previous and/or the following I-frames or P-frames, and the estimation applies a forward estimation, a backward estimation, or a bidirectional estimation with the previous or the following I-frames or P-frames as the main reference.
Therefore, take transmitting the MP4 formatted data as an example; the most important I-frame data should have be given higher priority while priorities of the P-frames and the B-frames should be reduced sequentially. Since the loss of the B-frames is firstly considered, higher percentages of the I-frames and the P-frames can be received successfully and thereby improving the phenomenon of decoding frame reduction due to the decrease in bandwidth.
In the U.S. patent publication No. 2007/0047553 A1, a method of uplink scheduling in wireless networks is disclosed. In the publication, the MS classifies the service flows of the uplink scheduling service into two categories. The first category is an unsolicited grant service (UGS) that does not require a bandwidth request, and the second category is a non-unsolicited grant service (non-UGS). The priority of the UGS category is higher than that of the non-UGS category. After the MS receives the bandwidth assigned by the BS, the packets in the UGS flow are first scheduled based on the priorities of the UGS flow. The method of transmitting the packets follows the principle of IEEE802.16e, such that the last packet may be fragmented if the packet can not be sent completely.
When all packets in the UGS have been sent, the remaining bandwidth is first reserved for signals having bandwidth requests (BW-request). Afterward, the packets in the non-UGS flow will be sent. The method of packet transmitting also follows the principle of IEEE802.16e, such that the last packet may be fragmented if the packet can not be sent completely. When all of the packets have been sent, then the bandwidths occupied by the BW-request signals will be returned and the next service flow will be scheduled. If two or more UGSs are present, then the order of transmitting will be arranged using a round-robin method. If two or more non-UGSs are present, then the order of transmitting will be arranged using a weighted round-robin method.
In the U.S. patent publication No. 2007/0206545 A1, an uplink scheduling method called “prioritization of connection identifiers for an uplink scheduler in a broadband wireless access communication system” is disclosed.
In the publication, the scheduler of the MS interprets the bandwidth size assigned by the BS to be that when the value of the BW-grant is greater than the value of the BW-request, the UGS portion of the BW-grant bandwidth must be scheduled into the UGS packets first. When the value of the BW-grant is smaller than the value of the BW-request, the bandwidth of the BW-grant does not include the UGS portion, and only the non-UGS portion will be scheduled. If the UGS packets are scheduled first, most of the non-UGS packets will not be sent, such that the MS will request more bandwidths from the BS, which results in inaccuracy when the BS assigns bandwidths to other MSs.
In the U.S. patent publication No. 2005/0063392 A1, a packet control apparatus and a method thereof called “packet-priority control apparatus and method thereof” is disclosed. The scheduling method of this prior art, as shown in FIG. 1, uses the method of adjusting priorities of the packets, which arranges each of the packets and increases the packet priorities at a predetermined fixed time Tpri before their respective decoding times, so that the expiring packets can be sent with first priority.
  priority  =      priority    +          {                                                  0              ,                                                          t              <                                                T                  req                                -                                  T                  pri                                                                                                        α              ,                                                          t              ≥                                                T                  req                                -                                  T                  pri                                                                        
Here, α: pre-determined constant.
In the aforementioned patent publications or other related patent publications, such as the U.S. patent publication NO. 2007/0206545 A1, priorities are given only based on the service types of the service flows instead of giving packets different priorities without considering the difference between the packet types in the various service flows. Moreover, the various demands of the decoding times for each packet are not weighted in the real-time flow.
Also, in the U.S. patent publication NO. 2007/0206545 A1, the non-UGS packets still use the priority-based scheduling method. If the packets are sent to the BS only for their higher priorities, the order of packet for transmitting will be affected by whether the bandwidth grant provided by the BS is greater or smaller than the size of the BW-request.
Furthermore, in the U.S. patent publication NO. 2005/0063392 A1, if the predetermined α is too large, then the packets originally having low priorities may have higher priorities than the packets originally having high priorities after the addition of α, such that the original packets with high priorities cannot be scheduled. However, if the α is too small, then the scheduling results will be the same as using the original priority-based scheduling method. In addition, if the selected Tpri is a fixed time, then the time of priority adjustment will be affected by different Tpri values.